package com.gitee.qdbp.general.common.api.event.model;

import java.util.List;
import com.gitee.qdbp.able.exception.ServiceException;

public interface IEventListener<C, W extends C, U extends C> {

    void beforeCreate(C params) throws ServiceException;

    void afterCreate(C params) throws ServiceException;

    void beforeCreate(List<C> params) throws ServiceException;

    void afterCreate(List<C> params) throws ServiceException;

    void beforeUpdate(U params) throws ServiceException;

    void afterUpdate(U params) throws ServiceException;

    void beforeDelete(W params) throws ServiceException;

    void afterDelete(W params) throws ServiceException;

}
